package com.itdct.onflow.core.dto

/**
 * @author Zhouwx
 * @date 2025/7/20 12:23:53
 * @version 1.0
 * @description 登录相关基础中间类
 */
open class BaseLoginDTO<AccountEntity : Any> {
    /**
     * 账户id
     */
    var accountId = 0L

    /**
     * 账户UID
     */
    var accountUid = ""

    /**
     * 账户名
     */
    var accountName = ""

    /**
     * 账户昵称
     */
    var accountNickName = ""

    /**
     * 登录终端类型
     * @see com.itdct.onflow.core.constant.LoginTerminalType
     */
    var loginTerminalType = ""

    /**
     * 登录平台类型，见字典platformType
     */
    var platformType = ""

    /**
     * 登录过期时间
     */
    var expireTime = 0L

    /**
     * 登录IP
     */
    var loginIp = ""

    /**
     * 登录token
     */
    var token = ""

    // TODO: Zhouwx: 2025/8/25 多角色支持
    /**
     * 角色id
     */
    var roleId = 0L

    /**
     * 角色名称
     */
    var roleName = ""

    /**
     * 是否是超级管理员
     */
    var superAdmin = false

    /**
     * 额外登录信息
     */
    var extraParam = HashMap<String, Any>()


}